.music-home {
    box-sizing: border-box;
    margin: 0 20px;
    padding: 10px 0;
    width: calc(100% - 40px);
    &-container {
        min-height: 480px;
    }
    .tab-home-content {
        display: block;
    }
    .tab-cate-content {
        position: relative;
        .tags {
            margin-bottom: 20px;
            .name {
                color: @c-333;
                margin-top: 20px;
            }
            .cates {
                color: @c-666;
                cursor: pointer;
                .active {
                    color: @primary
                }
            }
            .line {
                padding: 0 12px;
            }
        }
        .btn-cate {
            padding: 5px 10px;
            border-radius: @border-radius;
            cursor: pointer;
            border: 1px solid @c-ccc;
            i {
                display: inline-block;
            }
            &.active {
                i {
                    transform: rotate(-180deg);
                }
            }
            i::after {
                font-size: 14px;
                color: @c-000;
            }
        }
        .mask-cate {
            position: absolute;
            top: 30px;
            left: 0;
            z-index: 10;
            background-color: @white;
            border-radius: 3px;
            box-shadow: 0 0 10px @c-ccc;
            &::after {
                position: absolute;
                content: '';
                left: 30px;
                top: -6px;
                width: 10px;
                height: 10px;
                background-color: #fff;
                transform: rotate(-45deg);
                background-color: @white;
            }
            .wrap {
                padding: 20px;
                max-height: 400px;
                width: 596px;
                overflow: hidden;
                overflow-y: auto;
            }
            &.active {
                display: flex;
            }
            .btn-cate {
                padding: 8px 0;
                width: 100%;
                font-size: 14px;
                border-radius: 2px;
                margin-bottom: 10px;
                color: @c-666;
                border: 1px solid @c-ddd;
                position: relative;
                &.active {
                    color: @primary;
                    border: 1px solid @primary;
                    &::after {
                        content: '';
                        position: absolute;
                        height: 0px;
                        width: 0px;
                        right: 0;
                        bottom: 0;
                        border-width: 5px;
                        border-style: solid;
                        border-color: transparent @primary @primary transparent;
                    }
                }
            }
            .content {
                &-item {
                    align-items: flex-start;
                }
                .left {
                    .cate-title {
                        .name {
                            font-size: 16px;
                            color: @primary;
                            margin-left: 10px;
                        }
                    }
                }
                .right {
                    .cates {
                        margin-bottom: 20px;
                        &-item {
                            border: 1px solid @c-ccc;
                            margin-top: -1px;
                            margin-left: -1px;
                            padding: 8px 0;
                            height: 14px;
                            font-size: 12px;
                            width: 91px;
                            color: @c-666;
                            cursor: pointer;
                            position: relative;
                            .icon-hot {
                                position: absolute;
                                right: 3px;
                                top: 1px;
                                transform: scale(0.7);
                                font-size: 12px;
                                // font-family: '微软雅黑';
                                color: red;
                            }
                            &.active {
                                border: 1px solid @primary;
                                color: @primary;
                                z-index: 10;
                                position: relative;
                                &::after {
                                    content: '';
                                    position: absolute;
                                    height: 0px;
                                    width: 0px;
                                    right: 0;
                                    bottom: 0;
                                    border-width: 5px;
                                    border-style: solid;
                                    border-color: transparent @primary @primary transparent;
                                }
                            }
                        }
                    }
                }
            }
        }
        .recommend-list {
            .grid-list-item {
                // width: 178px;
                // height: 225px;
                &:hover {
                    .right {
                        // display: none;
                        opacity: 1;
                    }
                }
                .name {
                    font-size: 14px;
                }
                &.top {
                    .img {
                        height: 173px;
                        background-color: @c-000;
                    }
                    .top-text {
                        color: #ddc125;
                        margin-top: 10px;
                        font-size: 14px;
                        line-height: 20px;
                        i::after {
                            color:#ddc125;
                        }
                    }
                    .icon::after {
                        font-size: 50px;
                        color: #ddc125;
                    }
                }
            }
        }
    }
    .tab-singer-content {
        .tags {
            .name {
                margin-top: 0;
            }
            .cates {
                max-width: 715px;
                line-height: 24px;
                font-size: 12px;
                &-item {
                    padding: 3px 5px;
                    font-size: 12px;
                    // font-family: 微软雅黑;
                    &.active {
                        background-color: @c-666;
                        color: @white;
                        padding: 3px 5px;
                        border-radius: 3px;
                    }
                }
            }
            .ctitle {
                font-size: 12px;
                color: @c-666;
                line-height: 24px;
                margin-right: 10px;
            }
        }
        .recommend-list {
            position: relative;
            min-height: 400px;
            .grid-list-item {
                width: 135px;
                height: 180px;
                // &:nth-child(4n) {
                //     margin-right: 20px;
                // }
                // &:nth-child(5n) {
                //     margin-right: 0;
                // }
                .img {
                    height: 135px;
                    height: 135px;
                }
                &.top {
                    .img {
                        height: 135px;
                        height: 135px;
                        background-image: linear-gradient(to bottom right, #733EA5,  #BC65D1);
                    }
                    .top-text {
                        position: absolute;
                        width: 100%;
                        top: 50%;
                        left: 0;
                        font-family: 微软雅黑;
                        font-size: 32px;
                        line-height: 32px;
                        margin-top: -28px;
                        color: @white;
                        font-style: italic;
                        span {
                            font-size: 12px;
                            line-height: 24px;
                        }
                    }
                }
            }
        }
    }
    .swiper-container {
        // background-color: @c-e8;
        height: 200px;
        padding: 0 0 25px;
        overflow: hidden;
        border-radius: @border-radius;
        &:hover {
            .button-next,
            .button-prev {
                display: block;
            }
        }
        img {
            margin: 0 auto;
            height: 100%;
            overflow: hidden;
            border-radius: @border-radius;
        }
        .img {
            height: 100%;
            position: relative;
            overflow: hidden;
            border-radius: @border-radius;
        }
        .title {
            position: absolute;
            right: 475px;
            border-radius: 20px 0 0 20px;
            background-color: @primary;
            color: @white;
            padding: 3px 10px;
            bottom: 5px;
            line-height: 12px;
            border: 0;
            &.blue {
                background-color: rgb(9, 111, 151);
            }
            &.red {
                background-color: @primary;
            }
        }
        .swiper-slide {
            position: relative;
            z-index: 99;
            opacity: 1;
            right: -100px;
            overflow: hidden;
            border-radius: @border-radius;
        }
        .swiper-slide-next,
        .swiper-slide-prev {
            .img {
                filter: brightness(0.6);
            }
        }
        .swiper-slide-active {
            .title {
                right: 230px;
                bottom: 5px;
            }
            position: relative;
            left: 150px;
        }
        .swiper-pagination {
            .swiper-pagination-bullet {
                width: 20px;
                height: 2px;
                border-radius: 2px;
                &.swiper-pagination-bullet-active {
                    background-color: @primary;
                }
            }
        }
        .button-next,
        .button-prev {
            position: absolute;
            top: 50%;
            margin-top: -20px;
            z-index: 1000;
            display: none;
            cursor: pointer;
            &:hover::after {
                color: @white;
            }
            &::after {
                font-size: 36px;
                color: @c-ccc;
            }
        }
        .button-prev {
            left: 0;
        }
        .button-next {
            right: 0;
        }
        &.dj-swiper {
            .swiper-slide-active {
                left: 165px;
                .title {
                    right: 255px;
                }
            }
        }
        &.dj-cate-swiper {
            height: 60px;
            margin: 20px 40px 0;
            .swiper-slide {
                position: relative;
                opacity: 1;
                left: auto;
                right: auto;
                padding: 5px 0;
                border-radius: @border-radius;
                &:hover {
                    background-color: @c-e8;
                    cursor: pointer;
                }
            }
            .img {
                width: 30px;
                height: 30px;
                background-position: 0 0;
                background-size: cover;
                margin-bottom: 10px;
            }
            .name {
                color: @c-666;
            }
        }
    }
    .dj-cate {
        position: relative;
        &:hover {
            .button-next,
            .button-prev {
                display: block;
            }
        }
        .button-next,
        .button-prev {
            margin-top: -32px;
            &:focus {
                outline: none;
            }
            &:hover::after {
                color: @c-666;
            }
        }
        .button-next,
        .button-prev {
            position: absolute;
            top: 50%;
            margin-top: -30px;
            z-index: 1000;
            display: none;
            cursor: pointer;
            &:hover::after {
                color: @c-666;
            }
            &::after {
                font-size: 36px;
                color: @c-ccc;
            }
        }
        .button-prev {
            left: 0;
        }
        .button-next {
            right: 0;
        }
    }
    .title {
        line-height: 34px;
        margin-bottom: 10px;
        color: @c-000;
        border-bottom: 1px solid @c-ccc;
        .name {
            // font-family: sans-serif;
            font-size: 18px;
            font-weight: 400;
        }
        .more {
            color: @c-666;
            cursor: pointer;
        }
    }
    .recommend {
        .recommend-list {
            position: relative;
            min-height: 180px;
            .grid-list {
                &-item {
                    &.date {
                        text-align: center;
                        .img {
                            width: calc(100% - 2px);
                            border: 1px solid @c-e8;
                            // height: 120px;
                        }
                        .week {
                            // font-family: '微软雅黑';
                            margin-top: 16px;
                            color: @c-666;
                            font-size: 14px;
                        }
                        .date-text {
                            // font-family: '微软雅黑';
                            font-size: 88px;
                            color: @primary;
                            line-height: 98px;
                            font-weight: 400;
                        }
                    }
                }
            }
        }
    }
    .newest-list {
        border: 1px solid @c-e8;
        margin-bottom: 40px;
    }
    .top-list {
        >.title {
            font-size: 18px;
            line-height: 42px;
            // font-family: 微软雅黑;
            color: @c-333;
        }
        .body {
            min-height: 300px;
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-start;
            &-item {
                border-radius: @border-radius;
                overflow: hidden;
                // width: 242px;
                width: 31.8%;
                border: 1px solid @c-e8;
                margin-right: 1.6%;
                margin-bottom: 15px;
                &:nth-child(3n) {
                    margin-right: 0;
                }
                .top {
                    font-size: 20px;
                    color: @c-333;
                    padding: 10px 20px;
                    line-height: 20px;
                    box-sizing: border-box;
                    height: 60px;
                    font-weight: bold;
                    position: relative;
                    // border-bottom: 1px solid @c-e8;
                    &.color-S {
                        color: @white;
                        background-image: linear-gradient(to bottom right, #469BE4, #5D8BEC);
                    }
                    &.color-N {
                        color: @white;
                        background-image: linear-gradient(to bottom right, #2EA6BC, #42BEC8);
                    }
                    &.color-H {
                        color: @white;
                        background-image: linear-gradient(to bottom right, #C9543C, #C86541);
                    }
                    &.color-O {
                        color: @white;
                        background-image: linear-gradient(to bottom right, #D8426F, #EC5582);
                    }
                    &.color-singer {
                        color: @white;
                        background-image: linear-gradient(to bottom right, #8236C2, #AB60D4);
                    }
                    .time {
                        font-size: 12px;
                        color: @c-ddd;
                    }
                    .icon {
                        position: absolute;
                        top: 20px;
                        right: 20px;
                        &::after {
                            background-color: transparent;
                            color: @c-e8;
                            border: 1px solid @c-e8;
                        }
                    }
                }
                .music-list {
                    &-item {
                        padding: 0 15px;
                        overflow: hidden;
                        &:nth-child(odd) {
                            background-color: @c-f8;
                        }
                        &:nth-child(even) {
                            background-color: @white;
                        }
                        .order {
                            margin-right: 10px;
                            .num {
                                font-size: 14px;
                                // font-family: 微软雅黑;
                            }
                        }
                        .name {
                            width: 100px;
                            overflow: hidden;
                        }
                        .sing-info {
                            display: flex;
                            justify-content: space-between;
                            text-align: justify;
                        }
                        .source {
                            flex: 1;
                            text-align: right;
                        }
                    }
                }
                .bottom {
                    padding-right: 15px;
                    height: 30px;
                    line-height: 30px;
                    color: @c-666;
                    cursor: pointer;
                    background-color: @c-e8;
                }
            }
        }
    }
}

.tab-list {
    width: 100%;
    margin-bottom: 20px;
    border-bottom: 1px solid @c-ddd;
    &-item {
        padding: 0 10px;
        margin: 0 15px;
        line-height: 30px;
        font-size: 14px;
        cursor: pointer;
        border-bottom: 2px solid transparent;
        &.active {
            border-bottom: 2px solid @primary;
        }
    }
}